package com.ctshk.rpc.starvip.factory.member;

import com.ctshk.rpc.starvip.dto.start_vip.SiebelMessage;
import com.ctshk.rpc.starvip.dto.start_vip.member.UpdateMemberTier;
import com.ctshk.rpc.starvip.dto.start_vip.member.UpdateMemberTierLoyMember;
import com.ctshk.rpc.starvip.dto.start_vip.member.UpdateMemberTierSiebelMessage;
import com.ctshk.rpc.starvip.dto.start_vip.transaction.ListOfCtsLoyTransactionQuery;
import com.ctshk.rpc.starvip.dto.start_vip.transaction.LoyTransactionQuery;
import com.ctshk.rpc.starvip.dto.start_vip.transaction.TransactionQueryDTO;
import com.ctshk.rpc.starvip.factory.StarVipReqProvider;
import com.ctshk.rpc.starvip.req.member.UpdateMemberTierReq;
import com.google.common.collect.Lists;

/**
 * <p>
 *
 * </p>
 *
 * @author 李新科
 * @date 2021/6/28 10:06
 */
public class UpdateMemberTierFactory extends StarVipReqProvider<UpdateMemberTierReq> {

    public UpdateMemberTierFactory(UpdateMemberTierReq req) {
        super(req);
    }

    @Override
    public SiebelMessage produce() {
        UpdateMemberTierSiebelMessage dto = new UpdateMemberTierSiebelMessage();
        dto.setMessageId("String");
        dto.setIntObjectName("CTS Update Tier");
        dto.setInterfaceId("CTS_IF_22");
        dto.setOperation("Update");
        dto.setMessageType("Integration Object");
        dto.setIntObjectFormat("Siebel Hierarchical");

        dto.setUpdateMemberTier(new UpdateMemberTier(
                new UpdateMemberTierLoyMember()
                .setId(req.getId())
                .setCtsLowestTier(req.getCtsLowestTier())
        ));
        return dto;
    }
}
